In a design process of an ASP, a model is constructed based on a CPU and a set of peripherals. Three basic types of data are required to be generated before any “real modelling” can start. These can be summarised as follows:                A set of low level functions and constants to aid the integration of a functional model of a peripheral in a modelling language such as C.        A set of low level functions and constants to aid the testing of the functional model. This code would execute on a simulation of the CPU and would also be useful for functional verification.        A register or data structure mapping, indicating the size of various fields within the register, the reset state and its function.        
Typically this set of data is generated by hand and must be completed before any real modelling can start. The generation by hand is a laborious task and is prone to all the usual human errors.
Another difficulty which arises with existing simulation techniques is that the simulation of an ASP at circuit level is a slow and laborious process.
It is an object of the present invention to speed up the simulation at circuit level.